#ifndef LEARNING_H_
#define LEARNING_H_

// Aprendizado supervisionado
#define SUPERVISIONED 1

// Classe que representa um aprendizado
class Learning
{

public:

    // Constrói um aprendizado dando seu tipo e a taxa de aprendizado
    Learning(int type, double learningRate);
    virtual ~Learning();

    // Retorna a variação do peso dado a entrada e o erro de saída
    double operator()(double input, double error);

private:

    int type;
    double learningRate;

};

#endif /* LEARNING_H_ */
